package com.hb.core.aop;

import org.springframework.aop.framework.AopContext;

/**
 * @description: 获取代理对象本身
 * @projectName: zhb-frame-build
 * @author: zhouhaizhi
 * @createTime: 2021/8/13 17:33
 * @version:1.0
 */
public interface ProxySelf<T> {

    /**
     *@描述 取得当前对象的代理.
     *@创建人 zhouhaizhi
     *@创建时间 2021/8/13 17:34
     *@参数 
     *@返回值  代理对象,如果未被代理,则抛出 IllegalStateException
     *@修改人和其它信息
     */
    default T self(){
        return (T)AopContext.currentProxy();
    }
}
